/* 全局主题变量 */

/* 亮色主题变量 - 默认主题 */
:root {
  --background-color: #f0f2f5;
  --content-background: #ffffff;
  --text-color: #000000;
  --text-color-secondary: #5f6368;
  --border-color: #e8e8e8;
  --component-background: #ffffff;
  --box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  --header-background: #ffffff;
  --sidebar-background: #001529;
  --sidebar-text: rgba(255, 255, 255, 0.65);
  
  /* 卡片样式 */
  --card-background: #ffffff;
  --card-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
  
  /* 输入框样式 */
  --input-background: #ffffff;
  --input-border: #d9d9d9;
  
  /* 表格样式 */
  --table-header-bg: #fafafa;
  --table-row-hover: #f5f5f5;
}

/* 暗色主题变量 */
[data-theme="dark"] {
  --background-color: #141414;
  --content-background: #1f1f1f;
  --text-color: rgba(255, 255, 255, 0.85);
  --text-color-secondary: rgba(255, 255, 255, 0.45);
  --border-color: #434343;
  --component-background: #1f1f1f;
  --box-shadow: 0 2px 8px rgba(0, 0, 0, 0.45);
  --header-background: #1f1f1f;
  --sidebar-background: #141414;
  --sidebar-text: rgba(255, 255, 255, 0.65);
  
  /* 卡片样式 */
  --card-background: #1f1f1f;
  --card-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
  
  /* 输入框样式 */
  --input-background: #141414;
  --input-border: #434343;
  
  /* 表格样式 */
  --table-header-bg: #1d1d1d;
  --table-row-hover: #262626;
}

/* 应用主题到主要DOM元素 */
body {
  background-color: var(--background-color);
  color: var(--text-color);
  transition: background-color 0.3s, color 0.3s;
}

/* 卡片样式 */
.ant-card {
  background-color: var(--card-background);
  color: var(--text-color);
  box-shadow: var(--card-shadow);
  border-color: var(--border-color);
}

/* 输入框样式 */
.ant-input, 
.ant-select-selector,
.ant-picker,
.ant-input-number,
.ant-input-affix-wrapper {
  background-color: var(--input-background) !important;
  border-color: var(--input-border) !important;
  color: var(--text-color) !important;
}

/* 表格样式 */
.ant-table {
  background-color: var(--card-background);
  color: var(--text-color);
}

.ant-table-thead > tr > th {
  background-color: var(--table-header-bg) !important;
  color: var(--text-color) !important;
}

.ant-table-tbody > tr:hover > td {
  background-color: var(--table-row-hover) !important;
}

/* 边框和分割线 */
.ant-divider {
  border-color: var(--border-color);
}

/* 下拉菜单和弹出层 */
.ant-dropdown-menu,
.ant-select-dropdown,
.ant-picker-dropdown,
.ant-cascader-menus,
.ant-modal-content,
.ant-drawer-content {
  background-color: var(--component-background) !important;
  color: var(--text-color) !important;
}

/* 按钮样式 */
.ant-btn:not(.ant-btn-primary):not(.ant-btn-dangerous) {
  background-color: var(--component-background);
  border-color: var(--border-color);
  color: var(--text-color);
}

/* 排版样式 */
.ant-typography {
  color: var(--text-color);
}

.ant-typography.ant-typography-secondary {
  color: var(--text-color-secondary);
}

/* 主布局样式 */
.ant-layout {
  background-color: var(--background-color);
}

.ant-layout-header {
  background-color: var(--header-background);
  color: var(--text-color);
}

.ant-layout-sider {
  background-color: var(--sidebar-background);
}

.ant-menu-dark {
  background-color: var(--sidebar-background);
  color: var(--sidebar-text);
}

/* 过渡动画 */
* {
  transition: background-color 0.3s, color 0.3s, border-color 0.3s, box-shadow 0.3s;
} 